package com.yunxi.account.service;

import com.github.pagehelper.PageInfo;
import com.yunxi.account.pojo.AccountTypeVO;
import com.yunxi.core.web.ApiResult;
import com.yunxi.core.web.LoginInfo;

import java.lang.reflect.InvocationTargetException;
import java.util.List;

/**
 * <p>
 * 帐户类型 服务类
 * </p>
 *
 * @author
 * @since 2019-05-18
 */
public interface AccountTypeDubboService {

   AccountTypeVO getById(String id) throws InvocationTargetException, IllegalAccessException;

   void saveOrUpdate(List<AccountTypeVO> accountTypeVOList, LoginInfo loginInfo) throws InvocationTargetException, IllegalAccessException;

   void removeById(String id, LoginInfo loginInfo);

   PageInfo<AccountTypeVO> findPageByVO(AccountTypeVO accountTypeVO, Integer pageNum, Integer pageSize) throws InvocationTargetException, IllegalAccessException;

   AccountTypeVO load(String accountTypeCode);

   List listByVO(AccountTypeVO accountTypeVO);

   ApiResult listAccountType(AccountTypeVO accountTypeVO, LoginInfo loginInfo);
}
